/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package org.ik.RestauranteBar.SMO.Manejadores;

import java.util.List;
import javax.persistence.Query;
import org.ik.RestauranteBar.SMO.Encapsulados.Estados;
import org.ik.RestauranteBar.SMO.Manejadores.Conectores.ConexionMySQL;

/**
 *
 * @author Malkavian
 */
public class ManejadorEstado extends ConexionMySQL {

    private static ManejadorEstado manager;

    public static ManejadorEstado getInstance() {
        if (manager == null) {
            manager = new ManejadorEstado();
        }
        return manager;
    }

    private ManejadorEstado() {
    }

    public List<Estados> getEstados() {
        List<Estados> estado = null;

        try {
            Query query = getEntity().createNamedQuery("Estados.findAll");
            estado = query.getResultList();
        } catch (Exception ex) {
        }

        return estado;
    }
    
    public Estados getEstados(int id) {
        Estados estado = null;

        try {
            Query query = getEntity().createNamedQuery("Estados.findById",Estados.class);
            query.setParameter(":id", id);
            estado = (Estados) query.getSingleResult();
        } catch (Exception ex) {
        }

        return estado;
    }

    public Boolean insertarEstados(Estados estado) {

        try {

            getEntity().getTransaction().begin();
            getEntity().persist(estado);
            getEntity().getTransaction().commit();
            return true;

        } catch (Exception ex) {

            return false;
        }

    }

    public Boolean actualizarEstados(Estados estado) {

        try {

            getEntity().getTransaction().begin();
            getEntity().merge(estado);
            getEntity().getTransaction().commit();
            return true;

        } catch (Exception ex) {

            return false;
        }

    }
}